WriteOneToManyKeyValueRepo

interface WriteOneToManyKeyValueRepo<Key, Value> : Repo

Functions

add
Link copied to clipboard
abstract suspend fun add(toAdd: Map<Key, List<Value>>)
clear
Link copied to clipboard
abstract suspend fun clear(k: Key)
clearWithValue
Link copied to clipboard
abstract suspend fun clearWithValue(v: Value)
remove
Link copied to clipboard
abstract suspend fun remove(toRemove: Map<Key, List<Value>>)
set
Link copied to clipboard
open suspend fun set(toSet: Map<Key, List<Value>>)

Properties

onDataCleared
Link copied to clipboard
abstract val onDataCleared: Flow<Key>
onNewValue
Link copied to clipboard
abstract val onNewValue: Flow<Pair<Key, Value>>
onValueRemoved
Link copied to clipboard
abstract val onValueRemoved: Flow<Pair<Key, Value>>

Inheritors

KeyValuesCacheRepo
Link copied to clipboard
OneToManyKeyValueRepo
Link copied to clipboard
MapWriteOneToManyKeyValueRepo
Link copied to clipboard
MapOneToManyKeyValueRepo
Link copied to clipboard
MapperWriteOneToManyKeyValueRepo
Link copied to clipboard
MapperOneToManyKeyValueRepo
Link copied to clipboard
KtorOneToManyKeyValueRepo
Link copied to clipboard
KtorWriteOneToManyKeyValueRepo
Link copied to clipboard

Extensions

add
Link copied to clipboard
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.add(k: Key, v: List<Value>)
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.add(k: Key, vararg v: Value)
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.add(k: Key, v: List<Value>)
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.add(k: Key, vararg v: Value)
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.add(k: Key, v: List<Value>)
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.add(k: Key, vararg v: Value)
remove
Link copied to clipboard
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.remove(keysAndValues: List<Pair<Key, List<Value>>>)
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.remove(vararg keysAndValues: Pair<Key, List<Value>>)
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.remove(k: Key, v: List<Value>)
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.remove(k: Key, vararg v: Value)
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.remove(keysAndValues: List<Pair<Key, List<Value>>>)
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.remove(vararg keysAndValues: Pair<Key, List<Value>>)
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.remove(k: Key, v: List<Value>)
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.remove(k: Key, vararg v: Value)
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.remove(keysAndValues: List<Pair<Key, List<Value>>>)
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.remove(vararg keysAndValues: Pair<Key, List<Value>>)
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.remove(k: Key, v: List<Value>)
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.remove(k: Key, vararg v: Value)
set
Link copied to clipboard
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.set(k: Key, v: List<Value>)
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.set(k: Key, vararg v: Value)
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.set(k: Key, v: List<Value>)
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.set(k: Key, vararg v: Value)
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.set(k: Key, v: List<Value>)
inline suspend fun <Key, Value> WriteOneToManyKeyValueRepo<Key, Value>.set(k: Key, vararg v: Value)
withMapper
Link copied to clipboard
inline fun <FromKey, FromValue, ToKey, ToValue> WriteOneToManyKeyValueRepo<ToKey, ToValue>.withMapper(crossinline keyFromToTo: suspend FromKey.() -> ToKey = { this as ToKey }, crossinline valueFromToTo: suspend FromValue.() -> ToValue = { this as ToValue }, crossinline keyToToFrom: suspend ToKey.() -> FromKey = { this as FromKey }, crossinline valueToToFrom: suspend ToValue.() -> FromValue = { this as FromValue }): WriteOneToManyKeyValueRepo<FromKey, FromValue>
inline fun <FromKey, FromValue, ToKey, ToValue> WriteOneToManyKeyValueRepo<ToKey, ToValue>.withMapper(crossinline keyFromToTo: suspend FromKey.() -> ToKey = { this as ToKey }, crossinline valueFromToTo: suspend FromValue.() -> ToValue = { this as ToValue }, crossinline keyToToFrom: suspend ToKey.() -> FromKey = { this as FromKey }, crossinline valueToToFrom: suspend ToValue.() -> FromValue = { this as FromValue }): WriteOneToManyKeyValueRepo<FromKey, FromValue>
inline fun <FromKey, FromValue, ToKey, ToValue> WriteOneToManyKeyValueRepo<ToKey, ToValue>.withMapper(crossinline keyFromToTo: suspend FromKey.() -> ToKey = { this as ToKey }, crossinline valueFromToTo: suspend FromValue.() -> ToValue = { this as ToValue }, crossinline keyToToFrom: suspend ToKey.() -> FromKey = { this as FromKey }, crossinline valueToToFrom: suspend ToValue.() -> FromValue = { this as FromValue }): WriteOneToManyKeyValueRepo<FromKey, FromValue>